package com.ruoyi.system.domain.bo;

import com.ruoyi.common.core.validate.AddGroup;
import com.ruoyi.common.core.validate.EditGroup;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.validation.constraints.*;

import java.util.Date;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 用户签到业务对象 p_user_sign
 *
 * @author ruoyi
 * @date 2022-08-05
 */

@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel("用户签到业务对象")
public class PUserSignBo extends BaseEntity {

    /**
     * 
     */
    @ApiModelProperty(value = "", required = true)
    @NotNull(message = "不能为空", groups = { EditGroup.class })
    private Long id;

    /**
     * 用户id
     */
    @ApiModelProperty(value = "用户id", required = true)
    @NotNull(message = "用户id不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long userId;

    /**
     * 签到积分
     */
    @ApiModelProperty(value = "签到积分", required = true)
    @NotNull(message = "签到积分不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long signScore;

    /**
     * 累计签到天数
     */
    @ApiModelProperty(value = "累计签到天数", required = true)
    @NotNull(message = "累计签到天数不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long seriesDays;

    /**
     * 可补签的次数
     */
    @ApiModelProperty(value = "可补签的次数", required = true)
    @NotNull(message = "可补签的次数不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long signNums;

    /**
     * 类型 0 签到 1 消费
     */
    @ApiModelProperty(value = "类型 0 签到 1 消费", required = true)
    @NotBlank(message = "类型 0 签到 1 消费不能为空", groups = { AddGroup.class, EditGroup.class })
    private String type;

    /**
     * 签到时间
     */
    @ApiModelProperty(value = "签到时间", required = true)
    @NotNull(message = "签到时间不能为空", groups = { AddGroup.class, EditGroup.class })
    private Date signTime;

    /**
     * 0 用户 1 司机
     */
    @ApiModelProperty(value = "0 用户 1 司机", required = true)
    @NotBlank(message = "0 用户 1 司机不能为空", groups = { AddGroup.class, EditGroup.class })
    private String userType;


}
